package br.com.leopard.erp.gym.bean.acao;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.inject.Inject;

import br.com.leopard.erp.gym.bean.generic.AbstractCRUDBean;
import br.com.leopard.erp.gym.mapeamento.base_sistema.Acao;
import br.com.leopard.erp.gym.mapeamento.base_sistema.Modulo;
import br.com.leopard.erp.gym.negocio.AcaoNegocio;
import br.com.leopard.erp.gym.negocio.ModuloNegocio;

@ManagedBean
@ViewScoped
public class AcaoBean extends AbstractCRUDBean<Acao, Long> {

	@Inject
	private AcaoNegocio negocio;

	@Inject
	private ModuloNegocio moduloNegocio;

	private List<Modulo> moduloList;

	public AcaoBean() {
		super(Acao.class);
	}

	@PostConstruct
	private void init() {
		super.setNegocio(negocio);
	}

	public List<Modulo> getModuloList() {
		return moduloList;
	}

	@Override
	protected void procedimentosAntesAcessarCRUD() {
		moduloList = moduloNegocio.listAllAtivos();
	}

	@Override
	protected void procedimentosAntesAcessarListagem() {
		moduloList = null;
	}

}
